/**
 * 采用elementplus里面的form validate进行处理
 * 用户验证功能，用以封装登陆功能页面的所有验证功能
 * @author kangjx
 */
//用户名与密码的通用处理部分,
let commrule = (u: string) => {
  return [
    { required: true, message: `${u}不能为空`, trigger: "blur" },
    { min: 4, max: 16, message: `${u}为4-16位`, trigger: "blur" },
  ];
};

/**
 * 自定义验证功能测试
 *  后期使用
 */
let myRuleWithUsername = (rule: any, value: any, callback: any) => {
  let reg = /^[a-zA-Z0-9_]{4,16}$/;
  if (!reg.test(value)) {
    callback(new Error("用户名只能为数字字母下划线，且长度4-16"));
  }
  callback();
};

//对外处理的常量
export const loginRules = {
  //表单里面的prop元素
  username: [{ validator: myRuleWithUsername, trigger: "blur" }],
  //表单里面的prop元素
  userpass: commrule("密码"),
};
